Top level await(JavaScript)
他の言語についてはTop level awaitを参照
通常、await(JavaScript)はasync(JavaScript)の関数の中に書かなくてはいけない
asyncの無い関数の中や、関数の中に入っていない場所(トップレベル)に書かれたコードでawaitを使うことはできない
という決まりがあるのを無視して、トップレベルに書かれたコードにawaitを使えるようにしたのがTop level await
サンプルコード
code:top.html
<!DOCTYPE html>
<head>
<script src="top.js" type="module"></script>
</head>
code:top.js
async function sample() {
console.log("awaitに成功したよ");
}
await sample();
(ちなみに、上記のコードはちゃんとテストしていないMijinko_SD.icon)
<script>にてtype="module"を記述するのがミソ
細かいことは以下のページを参照
type | 属性 | <script>: スクリプト要素 - HTML: HyperText Markup Language | MDN
JavaScript モジュール - JavaScript | MDN
開発者コンソールを開いて、awaitに成功したよと表示されたなら成功
参考
Top level awaitについて整理した - at backyard
様々な環境においてのTop level awaitの書き方が記載されている
#Top_level_await